0 REM 1 POKE53280,0:POKE53281,0:E=31744:PRINT"[152]"CHR$(142):REM C64 MODS BY WIM '83 2 REM 10 DIMAA(13) 100 PRINT"[147]THIS IS A GAME FOR TWO, THREE OR FOUR" 105 PRINT"PLAYERS. TO WIN, YOU MUST BE ABLE TO" 110 PRINT"FACTOR SOME ALGEBRAIC EXPRESSIONS." 115 PRINT 120 PRINT"YOU WILL BE ASKED TO MAKE A BET. IF" 125 PRINT"YOU BET A HIGH NUMBER, YOU MAY BE ASKED" 130 PRINT"TO FACTOR A DIFFICULT EXPRESSION, BUT" 135 PRINT"IF YOU GET IT RIGHT YOU WILL ADVANCE" 140 PRINT"A LONG WAY DOWN THE RACE TRACK. IF" 145 PRINT"YOU GET THE FACTORS WRONG, THOUGH, YOU" 150 PRINT"WILL LOSE GROUND IN THE RACE." 155 PRINT 160 PRINT"YOU HAVE TO BE ABLE TO WRITE FACTORS" 165 PRINT"IN GOOD MATHEMATICAL FORM. HERE ARE" 170 PRINT"REMINDERS. NEVER WRITE A COEFFICIENT" 175 PRINT"OF ONE. ALWAYS WRITE COMMON FACTORS" 180 PRINT"FIRST. IF TWO OR MORE FACTORS ARE" 185 PRINT"IDENTICAL, USE EXPONENTS. ON THIS" 190 PRINT"COMPUTER YOU ENTER EXPONENTS BY USING" 195 PRINT"THE '^' KEY. THUS 'X SQUARED' BECOMES" 200 PRINT"'X^2'." 210 PRINT 220 PRINT" PRESS SPACE BAR TO CONTINUE" 230 GETYB$:IFYB$<>""THEN230 240 GETYB$:IFYB$<>" "THEN240 400 PRINT"[147]HOW MANY PLAYERS WILL THERE BE? (2-4)" 410 INPUTNP 420 IFABS(3-NP)>1THENPRINT"ILLEGAL NUMBER":GOTO400 500 REM DRAW TRACK 505 PRINT"[147]" 510 FORDV=1TONP+1 520 FORV1=1TO40:PRINT"-";:NEXT 530 PRINT 540 NEXT 550 PRINT"[145]START FINISH" 600 FORPN=1TONP 610 GOSUB11000 620 NEXT 650 PN=1 700 WA=0 710 PRINT"" 720 PRINT"PLAYER"PN", HOW MUCH DO YOU BET? (1-6)" 725 INPUTDI 727 DI=DI-1 730 IFABS(2.5-DI)>2.5THEN710 735 GOSUB6000:GOSUB7000 740 PRINT"FACTOR [145]"P$ 750 INPUTIN$ 755 GOSUB9000:GOSUB10000 760 IFWA=1GOTO800 770 PRINT"WELL DONE!":SC(PN)=SC(PN)+DI+1:GOSUB11000 775 IFSC(PN)>35GOTO1100 780 PN=PN+1:IFPN>NPTHENPN=1 790 GOTO890 800 PRINT"NO, THE FACTORS ARE" 810 PRINTF1$;F2$;F3$ 820 SC(PN)=SC(PN)-DI-1 830 IFSC(PN)<0THENSC(PN)=0 840 GOSUB11000 880 PN=PN+1:IFPN>NPTHENPN=1 890 TK=TI 900 IFTI-TK<200THEN900 902 IFWA=0GOTO910 905 IFTI-TK<700THEN905 910 PRINT"" 920 FORDV=1TO12 930 PRINT" " 940 NEXT 950 GOTO700 1100 PRINT"[147]PLAYER"PN"WINS 1110 [153]"DO YOU WISH TO PLAY AGAIN? (Y OR N)" 1120 [161]YA$:[139]YA$[178]""[167]1120 1130 [139]YA$[178]"Y"[167][156]:[137]0 1140 [139]YA$[178]"N"[167][153]"GOODBYE!":[128] 1150 [137]1120 4999 [128] 5000 [143] GENERATE PAIRS OF NUMBERS WITHOUT COMMON FACTORS 5070 AX[178]0 5100 [129]DV[178]1[164]13:AA(DV)[178]0:[130] 5450 AD[178]1:AE[178]1 5480 [129]DV[178]1[164]DI[173]3[170]1 5500 AB[178](10[170]DI)[172]([187](1))[174](10[173](DI[170]10)) 5510 [139]AB[179]2[167]AC[178]1:[137]5550 5512 [139]AB[179]6[167]AC[178]2:AA(2)[178]1:[137]5550 5514 [139]AB[179]10[167]AC[178]3:AA(3)[178]1:[137]5550 5516 [139]AB[179]12[167]AC[178]5:AA(5)[178]1:[137]5550 5518 [139]AB[179]13[167]AC[178]7:AA(7)[178]1:[137]5550 5520 [139]AB[179]14[167]AC[178]11:AA(11)[178]1:[137]5550 5522 [139]AB[179]15[167]AC[178]13:AA(13)[178]1:[137]5550 5550 AD[178]AD[172]AC 5555 [139]AD[177][178]5[170]3[172]DI[137]5000 5560 [130] 5590 AF[178][181](10[172][187](1)) 5595 [139]AF[177]4[167]AF[178]1:[137]5600 5597 AF[178][171]1 5600 AD[178]AD[172]AF 5680 [129]DV[178]1[164]DI[173]3[170]1 5700 AB[178](2[170]2.6[172]DI)[172]([187](1))[174](10[173](DI[170]10)) 5710 [139]AB[179]2[167]AC[178]1:[137]5730 5712 [139]AB[179]6[167]AC[178]2:[137]5730 5714 [139]AB[179]10[167]AC[178]3:[137]5730 5716 [139]AB[179]12[167]AC[178]5:[137]5730 5718 [139]AB[179]13[167]AC[178]7:[137]5730 5720 [139]AB[179]14[167]AC[178]11:[137]5730 5722 [139]AB[179]15[167]AC[178]13:[137]5730 5730 [139]AA(AC)[178]1[137]5700 5750 AE[178]AE[172]AC 5755 [139]AE[177][178]10[170]2[172]DI[167]AE[178]1:[137]5680 5760 [130] 5900 [142] 6000 [143] GENERATE POLYNOMIAL STRINGS 6010 [141]5000:AM[178]AE:AN[178]AD 6020 [141]5000:AO[178]AE:AP[178]AD 6030 [139]DI[179]2[167]AQ[178]1:AR[178]0:[137]6100 6040 [139]DI[178]3[167]AQ[178]1:AR[178]0:[137]6100 6050 [141]5000:AQ[178]AD:AR[178]AE[171]1 6100 C1[178]AQ[172]AM[172]AO:C1$[178][196](C1) 6110 C2[178]AQ[172](AM[172]AP[170]AN[172]AO):C2$[178][196](C2) 6120 C3[178]AQ[172]AN[172]AP:C3$[178][196](C3) 6130 V1$[178]"X":V2$[178]"X":V3$[178]"X" 6140 E1[178]2[170]AR:E1$[178][196](E1) 6150 E2[178]1[170]AR:E2$[178][196](E2) 6160 E3[178]AR:E3$[178][196](E3) 6170 [139]E2[178]1[167]E2$[178]"" 6180 [139]E3[178]1[167]E3$[178]"" 6190 [139]E3[178]0[167]E3$[178]"":V3$[178]"" 6200 S1$[178]"+":[139]C2[179]0[167]S1$[178]"" 6210 S2$[178]"+":[139]C3[179]0[167]S2$[178]"" 6220 [139]C3[178]0[167]C3$[178]"":S2$[178]"":V3$[178]"" 6230 [139]C2[178]0[167]S1$[178]"":C2$[178]"":V2$[178]"":E2$[178]"" 6240 [139]C1[178]0[167]CI$[178]"" 6250 [139]C1[178]1[167]C1$[178]" " 6260 [139]C2[178]1[167]C2$[178]"" 6270 [139]C3[179][177]1[137]6280 6275 [139]V3$[179][177]""[167]C3$[178]"" 6280 [139]C1[178][171]1[167]C1$[178]"-" 6290 [139]C2[178][171]1[167]C2$[178]"-" 6300 [139]C3[179][177][171]1[137]6500 6310 [139]V3$[179][177]""[167]C3$[178]"-" 6500 P$[178]""[170]C1$[170]V1$[170]"ON"[170]E1$[170]""[170]S1$[170]C2$[170]V2$[170]"ON"[170]E2$[170]""[170]S2$[170]C3$[170]V3$[170]"ON"[170]E3$[170]" 6600 BR$=P$:GOSUB8000:P$=BR$ 6999 RETURN 7000 REM GENERATE FACTORS 7100 FA$=STR$(AQ) 7110 IFAQ=1THENFA$="" 7115 IFAQ=-1THENFA$="-" 7120 FB$="X":IFAR=0THENFB$="" 7130 FC$="^"+STR$(AR):IFAR=0THENFC$="" 7135 IFAR=1THENFC$="" 7140 F1$=FA$+FB$+FC$ 7150 FD$=STR$(AM) 7155 IFAM=1THENFD$="" 7160 FE$="X" 7170 FF$="+":IFAN<=0THENFF$="" 7180 IFAM=0THENFD$="":FE$="":FF$="" 7190 FG$=STR$(AN):IFAN=0THENFG$="":FF$="" 7200 F2$="("+FD$+FE$+FF$+FG$+")" 7250 FH$=STR$(AO) 7255 IFAO=1THENFH$="" 7260 FI$="X" 7270 FJ$="+":IFAP<=0THENFJ$="" 7280 IFAO=0THENFH$="":FI$="":FJ$="" 7290 FK$=STR$(AP):IFAP=0THENFK$="":FJ$="" 7300 F3$="("+FH$+FI$+FJ$+FK$+")" 7500 IFF2$=F3$THENF3$="^2" 7600 IFF1$="[145]"THENF1$="" 7700 BR$=F1$:GOSUB8000:F1$=BR$ 7710 BR$=F2$:GOSUB8000:F2$=BR$ 7720 BR$=F3$:GOSUB8000:F3$=BR$ 7999 RETURN 8000 REM BLANK REMOVAL, STRING = BR$ 8010 BP$="" 8020 FORDV=1TOLEN(BR$) 8030 IFMID$(BR$,DV,1)=" "THEN8050 8033 IFMID$(BR$,DV,1)="["THENBP$=BP$+"(":GOTO8050 8035 IFMID$(BR$,DV,1)="]"THENBP$=BP$+")":GOTO8050 8040 BP$=BP$+MID$(BR$,DV,1) 8050 NEXT 8060 BR$=BP$ 8100 RETURN 9000 REM FINDING FACTORS IN ANSWER 9020 BR$=IN$:GOSUB8000:IN$=BR$ 9025 IFLEFT$(IN$,1)="?"THENIN$=RIGHT$(IN$,LEN(IN$)-1) 9030 G1$="" 9040 FORDV=1TOLEN(IN$) 9050 IFMID$(IN$,DV,1)="("THEN9100 9060 G1$=G1$+MID$(IN$,DV,1) 9070 NEXT 9080 WA=1:RETURN 9100 IO$=RIGHT$(IN$,(LEN(IN$)-LEN(G1$))) 9110 G2$="" 9120 FORDV=1TOLEN(IO$) 9130 IFMID$(IO$,DV,1)=")"THEN9200 9140 G2$=G2$+MID$(IO$,DV,1) 9150 NEXT 9180 WA=1:RETURN 9200 G2$=G2$+MID$(IO$,DV,1) 9210 G3$=RIGHT$(IO$,(LEN(IO$)-LEN(G2$))) 9900 RETURN 10000 REM COMPARING TRUE FACTORS AND ANSWER 10010 IFG1$<>F1$THENWA=1:RETURN 10020 IFG2$<>F2$GOTO10100 10030 IFG3$<>F3$THENWA=1:RETURN 10050 RETURN 10100 IFG2$<>F3$THENWA=1:RETURN 10110 IFG3$<>F2$THENWA=1:RETURN 10200 RETURN 11000 REM PLACE MARKERS 11010 PRINT"" 11020 FORDV=1TOPN 11030 PRINT 11032 NEXT 11035 PRINT"[145][145]" 11040 BR$=""+STR$(PN)+"[146]" 11050 GOSUB8000:PM$=BR$ 11060 SA$="" 11070 FORDV=0TOSC(PN):SA$=SA$+" ":NEXT 11080 SB$="" 11090 FORDV=0TO36-SC(PN):SB$=SB$+" ":NEXT 11100 PRINT"[145]";SA$;PM$;SB$;"[157][165]" 11200 RETURN